/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package issr.controller;

import issr.entity.Puntovendita;
import issr.entity.Utente;
import issr.persistence.Database;
import java.util.ArrayList;
import javax.jws.WebService;
import javax.jws.WebMethod;
import javax.jws.WebParam;
import javax.ejb.Stateless;

/**
 *
 * @author Soulreaver
 */
@WebService(serviceName = "ControlloreCreazionePuntoVendita")
@Stateless()
public class ControlloreCreazionePuntoVendita {

    private Database db = Database.getInstance();

    /**
     * Web service operation
     */
    @WebMethod(operationName = "creaNuovoPuntoVendita")
    public boolean creaNuovoPuntoVendita(@WebParam(name = "nome") String nome, @WebParam(name = "locazione") String locazione, @WebParam(name = "titolare") Utente titolare, @WebParam(name = "corrente") Utente corrente) {
        try {
            Puntovendita puntoVendita = new Puntovendita(locazione, nome);
            titolare.setPuntovendita(puntoVendita);
            db.creaNuovoPuntoVendita(titolare, puntoVendita);
            db.aggiungiEntry(
                    corrente,
                    "Punto vendita creato: " + nome + " (" + titolare.getNome() + ")");
            return true;
        } catch (Exception e) {
            return false;
        }
    }

    /**
     * Web service operation
     */
    @WebMethod(operationName = "ottieniListaGestoriPVDisponibili")
    public ArrayList<Utente> ottieniListaGestoriPVDisponibili() {
        return db.caricaListaGestoriPVDisponibili();
    }
}
